package com.lt.lumentracks.task;

import com.lt.lumentracks.service.ICommentService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

// 定时任务：每隔一段时间，将redis中的数据刷新到mysql中（评论点赞数）
@Component
public class CommentLikeNumFlushTask {

    @Autowired
    private ICommentService iCommentService;

    private static final int FIXED_DELAY = 20_000; // 定时任务执行间隔（单位：毫秒）
    private static final int BATCH_SIZE = 50; // 最大批量处理数量

    @Scheduled(fixedDelay = FIXED_DELAY) // fixedDelay --> 上一次执行完毕后延迟xxx秒再执行
    public void flush() {
        iCommentService.updateLikedNumber(BATCH_SIZE);
    }

}
